home *** CD-ROM | disk | FTP | other *** search
- package org.apache.xalan.xslt;
-
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.io.ObjectOutputStream;
- import java.io.OutputStream;
- import java.io.PrintWriter;
- import java.io.UnsupportedEncodingException;
- import java.lang.reflect.Constructor;
- import java.net.MalformedURLException;
- import java.net.URL;
- import java.util.ResourceBundle;
- import java.util.TooManyListenersException;
- import org.apache.xalan.xpath.XPathException;
- import org.apache.xalan.xpath.xml.XMLParserLiaison;
- import org.apache.xalan.xpath.xml.XSLMessages;
- import org.apache.xalan.xslt.res.XSLTErrorResources;
- import org.apache.xalan.xslt.trace.PrintTraceListener;
- import org.apache.xalan.xslt.trace.TraceListener;
- import org.w3c.dom.Document;
- import org.w3c.dom.Node;
- import org.xml.sax.InputSource;
- import org.xml.sax.SAXException;
-
- public class Process {
- protected static void printArgOptions(XSLTErrorResources var0) {
- System.out.println(((ResourceBundle)var0).getString("xslProc_option"));
- System.out.println(((ResourceBundle)var0).getString("optionIN"));
- System.out.println(((ResourceBundle)var0).getString("optionXSL"));
- System.out.println(((ResourceBundle)var0).getString("optionOUT"));
- System.out.println(((ResourceBundle)var0).getString("optionLXCIN"));
- System.out.println(((ResourceBundle)var0).getString("optionLXCOUT"));
- System.out.println(((ResourceBundle)var0).getString("optionPARSER"));
- System.out.println(((ResourceBundle)var0).getString("optionV"));
- System.out.println(((ResourceBundle)var0).getString("optionQC"));
- System.out.println(((ResourceBundle)var0).getString("optionQ"));
- System.out.println(((ResourceBundle)var0).getString("optionLF"));
- System.out.println(((ResourceBundle)var0).getString("optionCR"));
- System.out.println(((ResourceBundle)var0).getString("optionESCAPE"));
- System.out.println(((ResourceBundle)var0).getString("optionINDENT"));
- System.out.println(((ResourceBundle)var0).getString("optionTT"));
- System.out.println(((ResourceBundle)var0).getString("optionTG"));
- System.out.println(((ResourceBundle)var0).getString("optionTS"));
- System.out.println(((ResourceBundle)var0).getString("optionTTC"));
- System.out.println(((ResourceBundle)var0).getString("optionTCLASS"));
- System.out.println(((ResourceBundle)var0).getString("optionVALIDATE"));
- System.out.println(((ResourceBundle)var0).getString("optionEDUMP"));
- System.out.println(((ResourceBundle)var0).getString("optionXML"));
- System.out.println(((ResourceBundle)var0).getString("optionTEXT"));
- System.out.println(((ResourceBundle)var0).getString("optionHTML"));
- System.out.println(((ResourceBundle)var0).getString("optionPARAM"));
- System.out.println("[-MEDIA use media attribute to find stylesheet associated with a document.]");
- System.out.println("[-SX (User Xerces Serializers]");
- }
-
- public static void main(String[] var0) {
- Runtime.getRuntime().traceMethodCalls(false);
- boolean var1 = false;
- boolean var2 = false;
- PrintWriter var3 = new PrintWriter(System.err, true);
- PrintWriter var4 = var3;
- XSLTErrorResources var5 = (XSLTErrorResources)XSLMessages.loadResourceBundle("org.apache.xalan.xslt.res.XSLTErrorResources");
- if (var0.length < 1) {
- printArgOptions(var5);
- } else {
- String var7 = "org.apache.xalan.xpath.dtm.DTMLiaison";
-
- XMLParserLiaison var6;
- try {
- boolean var8 = true;
-
- for(int var9 = 0; var9 < var0.length; ++var9) {
- if ("-PARSER".equalsIgnoreCase(var0[var9])) {
- ++var9;
- var7 = var0[var9];
- var8 = false;
- }
- }
-
- Class var10 = Class.forName(var7);
- Constructor var11 = var10.getConstructor((Class[])null);
- var6 = (XMLParserLiaison)var11.newInstance((Object[])null);
- } catch (Exception var58) {
- System.err.println(XSLMessages.createMessage(25, new Object[]{var7}));
- return;
- }
-
- XSLTProcessor var60 = XSLTProcessorFactory.getProcessor(var6);
- boolean var61 = false;
- String var63 = null;
- String var64 = null;
- String var12 = null;
- String var13 = null;
- String var14 = null;
- String var15 = null;
- Object var16 = null;
- boolean var17 = false;
- boolean var18 = false;
- boolean var19 = false;
- PrintTraceListener var20 = null;
- FileOutputStream var21 = null;
- ObjectOutputStream var22 = null;
- String var23 = null;
- String var24 = null;
-
- for(int var25 = 0; var25 < var0.length; ++var25) {
- if ("-TT".equalsIgnoreCase(var0[var25])) {
- if (var20 == null) {
- var20 = new PrintTraceListener(var3);
- }
-
- var20.m_traceTemplates = true;
- } else if ("-TG".equalsIgnoreCase(var0[var25])) {
- if (var20 == null) {
- var20 = new PrintTraceListener(var3);
- }
-
- var20.m_traceGeneration = true;
- } else if ("-TS".equalsIgnoreCase(var0[var25])) {
- if (var20 == null) {
- var20 = new PrintTraceListener(var3);
- }
-
- var20.m_traceSelection = true;
- } else if ("-TTC".equalsIgnoreCase(var0[var25])) {
- if (var20 == null) {
- var20 = new PrintTraceListener(var3);
- }
-
- var20.m_traceElements = true;
- } else if ("-TCLASS".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- String var26 = var0[var25];
-
- try {
- Class var27 = Class.forName(var26);
- Constructor var28 = var27.getConstructor((Class[])null);
- TraceListener var29 = (TraceListener)var28.newInstance((Object[])null);
- var60.addTraceListener(var29);
- } catch (Exception var48) {
- System.err.println(XSLMessages.createMessage(29, new Object[]{var26}));
- }
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-TCLASS"}));
- }
- } else if ("-ESCAPE".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- var6.setSpecialCharacters(var0[var25]);
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-ESCAPE"}));
- }
- } else if ("-INDENT".equalsIgnoreCase(var0[var25])) {
- int var68;
- if (var25 + 1 < var0.length && var0[var25 + 1].charAt(0) != '-') {
- ++var25;
- var68 = Integer.parseInt(var0[var25]);
- } else {
- var68 = 0;
- }
-
- var6.setIndent(var68);
- } else if ("-IN".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- var63 = var0[var25];
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-IN"}));
- }
- } else if ("-MEDIA".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- var24 = var0[var25];
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-MEDIA"}));
- }
- } else if ("-OUT".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- var64 = var0[var25];
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-OUT"}));
- }
- } else if ("-XSL".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- var13 = var0[var25];
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-XSL"}));
- }
- } else if ("-LXCIN".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- var15 = var0[var25];
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-LXCIN"}));
- }
- } else if ("-LXCOUT".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- var14 = var0[var25];
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-LXCOUT"}));
- }
- } else if ("-PARAM".equalsIgnoreCase(var0[var25])) {
- if (var25 + 2 < var0.length) {
- ++var25;
- String var69 = var0[var25];
- ++var25;
- String var71 = var0[var25];
- var60.setStylesheetParam(var69, var71);
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-PARAM"}));
- }
- } else if ("-treedump".equalsIgnoreCase(var0[var25])) {
- if (var25 + 1 < var0.length) {
- ++var25;
- String var10000 = var0[var25];
- } else {
- System.err.println(XSLMessages.createMessage(89, new Object[]{"-treedump"}));
- }
- } else if ("-F".equalsIgnoreCase(var0[var25])) {
- var61 = true;
- } else if ("-E".equalsIgnoreCase(var0[var25])) {
- var6.setShouldExpandEntityRefs(false);
- } else if ("-V".equalsIgnoreCase(var0[var25])) {
- var3.println(((ResourceBundle)var5).getString("version") + XSLProcessorVersion.S_VERSION + ", " + var6.getParserDescription() + ((ResourceBundle)var5).getString("version2"));
- } else if ("-QC".equalsIgnoreCase(var0[var25])) {
- var60.setQuietConflictWarnings(true);
- } else if ("-Q".equalsIgnoreCase(var0[var25])) {
- var2 = true;
- } else if ("-VALIDATE".equalsIgnoreCase(var0[var25])) {
- String var70;
- if (var25 + 1 < var0.length && var0[var25 + 1].charAt(0) != '-') {
- ++var25;
- var70 = var0[var25];
- } else {
- var70 = "yes";
- }
-
- var6.setUseValidation(var70.equalsIgnoreCase("yes"));
- } else if ("-PARSER".equalsIgnoreCase(var0[var25])) {
- ++var25;
- } else if ("-XML".equalsIgnoreCase(var0[var25])) {
- var23 = "xml";
- } else if ("-TEXT".equalsIgnoreCase(var0[var25])) {
- var23 = "text";
- } else if ("-HTML".equalsIgnoreCase(var0[var25])) {
- var23 = "html";
- } else if ("-STRIPCDATA".equalsIgnoreCase(var0[var25])) {
- var17 = true;
- } else if ("-ESCAPECDATA".equalsIgnoreCase(var0[var25])) {
- var18 = true;
- } else if ("-ESCAPECDATA".equalsIgnoreCase(var0[var25])) {
- var19 = true;
- } else if ("-EDUMP".equalsIgnoreCase(var0[var25])) {
- var1 = true;
- if (var25 + 1 < var0.length && var0[var25 + 1].charAt(0) != '-') {
- ++var25;
- var12 = var0[var25];
- }
- } else {
- System.err.println(XSLMessages.createMessage(90, new Object[]{var0[var25]}));
- }
- }
-
- try {
- var60.setDiagnosticsOutput(var2 ? null : var3);
- if (var12 != null) {
- var4 = new PrintWriter(new FileWriter(var12));
- }
-
- StylesheetRoot var72 = null;
- if (var15 != null) {
- try {
- FileInputStream var77 = new FileInputStream(var15);
- ObjectInputStream var30 = new ObjectInputStream(var77);
- var72 = (StylesheetRoot)var30.readObject();
- var30.close();
- } catch (UnsupportedEncodingException var47) {
- Object var73 = null;
- var3.println(XSLMessages.createMessage(28, new Object[]{((StylesheetRoot)var73).m_encoding}));
- throw new XSLProcessorException(XSLMessages.createMessage(28, new Object[]{((StylesheetRoot)var73).m_encoding}));
- }
- } else if (var13 != null) {
- var72 = var60.processStylesheet(var13);
- }
-
- Object var78 = null;
- if (var64 != null) {
- var78 = new FileOutputStream(var64);
- }
-
- if (var78 == null) {
- var78 = System.out;
- }
-
- if (var72 != null) {
- if (var23 != null) {
- var72.setOutputMethod(var23);
- }
-
- var72.m_useXercesSerializers = var19;
- }
-
- if (var20 != null) {
- var60.addTraceListener(var20);
- }
-
- if (var63 != null) {
- if (var72 != null) {
- Node var79 = var60.getSourceTreeFromInput(new XSLTInputSource(var63));
- var72.process(var60, var79, new XSLTResultTarget((OutputStream)var78));
- } else if (var24 != null) {
- StylesheetSpec var80 = var60.getAssociatedStylesheet(new XSLTInputSource(var63), var24, (String)null);
- if (var80 == null) {
- throw new XSLProcessorException("No stylesheet found for media: " + var24);
- }
-
- if (((InputSource)var80).getSystemId() != null) {
- URL var31 = var60.getXMLProcessorLiaison().getURLFromString(((InputSource)var80).getSystemId(), var63);
- ((InputSource)var80).setSystemId(var31.toExternalForm());
- }
-
- var60.process(new XSLTInputSource(var63), var80, new XSLTResultTarget((OutputStream)var78));
- } else {
- var60.process(new XSLTInputSource(var63), (XSLTInputSource)null, new XSLTResultTarget((OutputStream)var78));
- }
- } else if (var72 != null && var14 == null) {
- Document var81 = var6.createDocument();
- var72.process(var60, var81, new XSLTResultTarget((OutputStream)var78));
- }
-
- if (var72 != null && var14 != null) {
- var21 = new FileOutputStream(var14);
- var22 = new ObjectOutputStream(var21);
- var22.writeObject(var72);
- }
- } catch (TooManyListenersException var49) {
- if (var1) {
- ((Throwable)var49).printStackTrace(var4);
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- } catch (XPathException var50) {
- if (var1) {
- var50.printStackTrace(var4);
- }
-
- if (var50.getStylesheetNode() != null && var50.getStylesheetNode() instanceof ElemTemplateElement) {
- ElemTemplateElement var76 = (ElemTemplateElement)var50.getStylesheetNode();
- var3.println(var76.m_stylesheet.m_baseIdent + "; " + ((ResourceBundle)var5).getString("line") + var76.m_lineNumber + "; " + ((ResourceBundle)var5).getString("column") + var76.m_columnNumber + "; " + var50.getMessage());
- } else if (var50 instanceof XSLProcessorException) {
- var3.println("XSLT: " + var50.getMessage());
- } else {
- var3.println("XPATH: " + var50.getMessage());
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- } catch (SAXException var51) {
- Exception var75 = var51.getException();
- if (var75 != null) {
- if (var1) {
- ((Throwable)var75).printStackTrace(var4);
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- } else {
- if (var1) {
- ((Throwable)var51).printStackTrace(var4);
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- }
- } catch (MalformedURLException var52) {
- if (var1) {
- ((Throwable)var52).printStackTrace(var4);
- } else {
- System.out.println("Error! " + ((Throwable)var52).getMessage());
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- } catch (ClassNotFoundException var53) {
- if (var1) {
- ((Throwable)var53).printStackTrace(var4);
- } else {
- System.out.println("Error! " + ((Throwable)var53).getMessage());
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- } catch (FileNotFoundException var54) {
- if (var1) {
- ((Throwable)var54).printStackTrace(var4);
- } else {
- System.out.println("Error! " + ((Throwable)var54).getMessage());
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- } catch (IOException var55) {
- if (var1) {
- ((Throwable)var55).printStackTrace(var4);
- } else {
- System.out.println("Error! " + ((Throwable)var55).getMessage());
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- } catch (NoClassDefFoundError var56) {
- String var74 = ((Throwable)var56).getMessage();
- if (var74.indexOf("com/ibm/xml/parser/Parser") >= 0) {
- var3.println("==========================================");
- var3.println(((ResourceBundle)var5).getString("noParsermsg1"));
- var3.println(((ResourceBundle)var5).getString("noParsermsg2"));
- var3.println(((ResourceBundle)var5).getString("noParsermsg3"));
- var3.println(((ResourceBundle)var5).getString("noParsermsg4"));
- var3.println(((ResourceBundle)var5).getString("noParsermsg5"));
- var3.println("==========================================");
- } else {
- if (var1) {
- ((Throwable)var56).printStackTrace(var4);
- } else {
- System.out.println("Error! " + ((Throwable)var56).getMessage());
- }
-
- var3.println(XSLMessages.createMessage(27, (Object[])null));
- }
- } finally {
- try {
- if (var22 != null) {
- var22.flush();
- var22.close();
- }
-
- if (var21 != null) {
- ((OutputStream)var21).flush();
- var21.close();
- }
- } catch (Exception var46) {
- }
-
- }
-
- if (var12 != null) {
- var4.close();
- }
-
- if (!var2) {
- var3.println(((ResourceBundle)var5).getString("xsldone"));
- } else {
- var3.println("");
- }
- }
- }
- }
-